Skip to content

Update Mailsy Extension#26447

Merged
raycastbot merged 8 commits intoraycast:mainfrom
BalliAsghar:Mailsy-Update
Mar 19, 2026
Merged

Update Mailsy Extension#26447
raycastbot merged 8 commits intoraycast:mainfrom
BalliAsghar:Mailsy-Update

Conversation

@BalliAsghar
Copy link
Contributor

Description

  • Added Windows support
  • Upgraded the extension to the latest Raycast API and tooling
  • Refactored and cleaned up the codebase
  • Improved loading, error, and retry states

Screencast

Checklist

@raycastbot raycastbot added extension fix / improvement Label for PRs with extension's fix improvements extension: mailsy Issues related to the mailsy extension platform: macOS platform: Windows labels Mar 19, 2026
@raycastbot
Copy link
Collaborator

Thank you for the update! 🎉

We're currently experiencing a high volume of incoming requests. As a result, the initial review may take up to 10-15 business days.

@raycastbot raycastbot added the OP is author The OP of the PR is the author of the extension label Mar 19, 2026
@greptile-apps
Copy link
Contributor

greptile-apps bot commented Mar 19, 2026

Greptile Summary

This PR upgrades the Mailsy extension to the latest Raycast API/tooling, adds Windows platform support, and refactors the UI into dedicated Mail and Message components with improved loading, error, and retry states. The overall structure is clean, but there are a couple of issues worth addressing before merging.

  • Changelog date placeholder: The new entry uses a hardcoded date (2026-03-18) instead of the required {PR_MERGE_DATE} template variable.
  • Action.OpenInBrowser with local file paths: Both Mail.tsx and Message.tsx pass raw filesystem paths from getMessageFilePath() to Action.OpenInBrowser. On Windows (one of the stated goals of this PR), a raw path like C:\Users\...\assets\<id>.html is not a valid URL — it needs a file:// prefix to open correctly in a browser.
  • Silent error swallowing in withToast: Non-Error exceptions thrown during an action are caught but never surfaced to the user, leaving them with no feedback when certain failure modes occur.

Confidence Score: 3/5

  • Not safe to merge as-is — the local file path passed to Action.OpenInBrowser will likely break the "Open in Browser" action on Windows, which is the main feature addition of this PR.
  • The Action.OpenInBrowser calls with raw filesystem paths are a functional regression for Windows users (the stated new platform), and the changelog date placeholder issue is a required convention violation. Both need to be fixed before merging.
  • src/components/Mail.tsx and src/components/Message.tsx for the file:// URL issue; CHANGELOG.md for the date placeholder.

Important Files Changed

Filename Overview
extensions/mailsy/CHANGELOG.md New changelog entry uses a hardcoded date 2026-03-18 instead of the required {PR_MERGE_DATE} placeholder.
extensions/mailsy/src/components/Mail.tsx New component with proper Windows shortcut support, but Action.OpenInBrowser passes a raw filesystem path instead of a file:// URL, which will break on Windows.
extensions/mailsy/src/components/Message.tsx New component with retry state; shares the same Action.OpenInBrowser local-path issue as Mail.tsx.
extensions/mailsy/src/libs/api.ts Clean refactor with caching, timeout, and proper async patterns; no critical issues.
extensions/mailsy/src/libs/utils.ts Good utilities overall; withToast silently discards non-Error exceptions, which could hide failures from the user.
extensions/mailsy/src/hooks/useAccount.ts Generic async data-fetching hook with cancellation guard — correctly implemented, though the name useAccount is misleading since it handles all async state.
extensions/mailsy/src/mailsy.tsx Bootstrap entrypoint with loading/error/retry states; clean and correct.
extensions/mailsy/package.json Correctly updated with latest @raycast/api, Windows platform added, categories valid.
extensions/mailsy/eslint.config.js Correct ESLint v9 flat config using defineConfig from eslint/config.

Last reviewed commit: "docs: update changel..."

@pernielsentikaer pernielsentikaer self-assigned this Mar 19, 2026
Copy link
Collaborator

@pernielsentikaer pernielsentikaer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me, approved 🔥

@raycastbot raycastbot merged commit 0dacc49 into raycast:main Mar 19, 2026
@github-actions
Copy link
Contributor

Published to the Raycast Store:
https://raycast.com/BalliAsghar/mailsy

@raycastbot
Copy link
Collaborator

🎉 🎉 🎉

We've rewarded your Raycast account with some credits. You will soon be able to exchange them for some swag.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

extension fix / improvement Label for PRs with extension's fix improvements extension: mailsy Issues related to the mailsy extension OP is author The OP of the PR is the author of the extension platform: macOS platform: Windows

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants